<!DOCTYPE html>
<html class="x-admin-sm" xmlns:th="http://www.thymeleaf.org">
  
  <head>
    <meta charset="UTF-8">
    <title>修改用户信息</title>
    <header th:replace="header::html"></header>
  </head>
  
  <body>
    <div class="x-body">
        <form class="layui-form">
            <input type="hidden" id="userId" name="id" th:value="${sysUser.id}">

          <div class="layui-form-item">
              <label for="L_username" class="layui-form-label">
                  <span class="x-red">*</span>用户名
              </label>
              <div class="layui-input-inline">
                  <input type="text" id="L_username" th:value="${sysUser.username}" name="username" required="" lay-verify="username" autocomplete="off" class="layui-input">
              </div>
              <div class="layui-form-mid layui-word-aux">
                  <span class="x-red">*</span>将会成为您唯一的登入名
              </div>
          </div>
          <div class="layui-form-item">
              <label for="L_nickname" class="layui-form-label">
                  <span class="x-red">*</span>昵称
              </label>
              <div class="layui-input-inline">
                  <input type="text" id="L_nickname" th:value="${sysUser.nickname}" name="nickname" required="" lay-verify="nickname" autocomplete="off" class="layui-input">
              </div>
          </div>
          <div class="layui-form-item">
              <label for="L_telephone" class="layui-form-label">
                  <span class="x-red">*</span>手机
              </label>
              <div class="layui-input-inline">
                  <input type="text" id="L_telephone" th:value="${sysUser.telephone}" name="telephone" required="" lay-verify="telephone" autocomplete="off" class="layui-input">
              </div>
              <div class="layui-form-mid layui-word-aux">
                  11位数字
              </div>
          </div>
          <div class="layui-form-item">
              <label for="L_email" class="layui-form-label">
                  <span class="x-red">*</span>邮件
              </label>
              <div class="layui-input-inline">
                  <input type="text" id="L_email" th:value="${sysUser.email}" name="email" required="" lay-verify="email" autocomplete="off" class="layui-input">
              </div>
          </div>
            <div class="layui-form-item">
                <label for="L_email" class="layui-form-label">生日</label>
                <div class="layui-input-inline">
                    <input type="text" id="L_birthday"  th:value="${#dates.format(sysUser.birthday, 'yyyy-MM-dd')}"  name='birthday' lay-verify="date" placeholder="yyyy-MM-dd" class="layui-input">
                </div>
            </div>
            <div class="layui-form-item">
                <label class="layui-form-label">性别</label>
                <div class="layui-input-block">
                    <input type="radio" th:field="${sysUser.sex}" name="sex" value="1" title="男" checked="">
                    <input type="radio" th:field="${sysUser.sex}" name="sex" value="0" title="女">
                </div>
            </div>
            <input type="text" id="roleId"  name="roleId" style="display:none;"/>
            <div class="layui-form-item">
                <label class="layui-form-label">角色</label>
                <div class="layui-input-block show-role-container">
                </div>
            </div>
          <div class="layui-form-item">
              <label for="L_email" class="layui-form-label">
              </label>
              <button  class="layui-btn" lay-filter="add" lay-submit="">
                  更新
              </button>
          </div>
      </form>
    </div>
    <script>
      layui.use(['form','layer', 'laydate'], function(){
          $ = layui.jquery;
          var form = layui.form
          ,layer = layui.layer
          ,laydate = layui.laydate;
          getAllRole(function(){
              layui.form.render('radio')
          });
          //日期
          laydate.render({
              elem: '#L_birthday'
              ,format: 'yyyy-MM-dd' //可任意组合
          });

        //自定义验证规则
        form.verify({
          nikename: function(value){
            if(value.length < 5){
              return '昵称至少五个字符';
            }
          }
          ,telephone: [/^1[3456789]\d{9}$/, '手机号格式不正确']
          ,email: function(value){
              if($('#email').val()!=$('#email').val()){
                  return '邮箱不正确';
              }
          }
        });

        //监听提交
        form.on('submit(add)', function(data){
            var rolelRadio = $("[name=roleId]:checked");
            if(rolelRadio == undefined || rolelRadio.length <= 0){
                layer.alert("请给该用户设置角色");
                return false;
            }
            $.ajax({
                url:"/user/edit",
                type:"POST",
                data:data.field,
                dataType:'json',
                success:function(result){
                    if(result.code == 500 || result.code == 5000100 || result.code == 5000101 || result.code == 5000102){
                        layer.alert(result.msg);
                    }else if(result.code === 200){
                        layer.alert("更新成功", {icon: 6},function () {
                            //关闭当前frame
                            xadmin.close();
                            // 可以对父窗口进行刷新
                            xadmin.father_reload();
                        });
                    }

                }
            });
          return false;
        });
      });

      function getAllRole(callback){

          $.ajax({
              url:"/role/all",
              type:"GET",
              dataType:'json',
              success:function(result){
                  var html = "";
                  if(result.datas && result.datas.length > 0){
                      for(i in result.datas ){
                          html += '<input type="radio"  name="roleId" value="'+result.datas[i].id+'" title="'+result.datas[i].name+'" >' +
                              '<div class="layui-unselect layui-form-radio layui-form-radioed"><i class="layui-anim layui-icon"></i><div>'+result.datas[i].name+'</div></div>';
                      }
                      $(".show-role-container").html(html);
                      getCurrentUserRole(callback);
                  }
              }
          });
      }

      function getCurrentUserRole(callback){
          var userId = $("#userId").val();
          $.ajax({
              url:"/roleuser/findRoleUserByUserId",
              type:"GET",
              data:{
                "userId":userId
              },
              dataType:'json',
              success:function(result){
                  if(result.code == 200){
                      if(result.data){
                          $("[name=roleId]").each(function(){
                              if($(this).val() == result.data.roleId){
                                  $(this).attr("checked","checked");
                                  return false;
                              }
                          });
                      }
                      if(callback){
                          callback();
                      }

                      //callback&&callback()
                  }
              }
          });
      }
  </script>
  </body>
</html>